package com.dmgis.qxfw.dataservice.bigdata.controller;


import com.dmgis.qxfw.dataservice.bigdata.service.IDataService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;

@Controller
public class DataServiceController {

	@Resource
	private IDataService handle;


	@RequestMapping(value = "/serviceDeskProcessRequest", produces = "application/json;charset=utf-8")
	@ResponseBody
	public String serviceDeskProcessRequest(HttpServletRequest request) throws Exception {
		String method = request.getParameter("method");
		// 接口
		String result = null;
		switch (method) {
		case "getApiInfo": {
			result = handle.getApiInfo(request);
		}
			break;
		/******************************* 基础预报农气 ***************************/
		case "getSmallScaleByTimeRangeId":// 根据时间范围、站号实况预报查询
		{
			result = handle.getSmallScaleByTimeRangeId(request);
		}
			break;
		case "getCityForecastByTimedateAndCounty":// 根据时间、时次、时效、所属县城镇预报查询
		{
			result = handle.getCityForecastByTimedateAndCounty(request);
		}
			break;
		case "getFineForecastByTimedateAndCountyStaname":// 根据时间、时次、时效、所属县精细化预报查询
		{
			result = handle.getFineForecastByTimedateAndCountyStaname(request);
		}
			break;
		case "getRadByTimeRangeAndTypeElevationId":// 根据时间范围 类型 仰角 编号查询雷达列表信息
		{
			result = handle.getRadByTimeRangeAndTypeElevationId(request);
		}
			break;
		case "getCloudImgByTimerangeAndType":// 根据时间范围 类型查询云图列表信息
		{
			result = handle.getCloudImgByTimerangeAndType(request);
		}
			break;
		// 指数
		case "getZhishuForcastByTimedateAndCityid":// 根据日期、时次 城市编号指数信息查询
		{
			result = handle.getZhishuForcastByTimedateAndCityid(request);
		}
			break;
		// 雷电
		case "getThunderByTimerangeAndCounty":// 根据时间范围和县名雷电查询
		{
			result = handle.getThunderByTimerangeAndCounty(request);
		}
			break;
		// 林业-森林火险
		case "getFireForecastByTimeRange":// 森林火险预报查询 提供森林火险预报数据
		{
			result = handle.getFireForecastByTimeRange(request);
		}
			break;
		case "getFireHistoryByTimerange":// 森林火险数据(地图显示) 提供森林火险历史数据
		{
			result = handle.getFireHistoryByTimerange(request);
		}
			break;

		// 地灾
		case "getDZWarningByTimerange":// 地灾预警 时间范围 提供地灾预警数据
		{
			result = handle.getDZWarningByTimerange(request);
		}
			break;

		case "getDisasterpointByDmgis_id":// 灾点查询 dmgis_id 提供灾点查询
		{
			result = handle.getDisasterpointByDmgis_id(request);
		}
			break;
		// 水利
		case "getSL_warningByTimerange":// 水利预警数据 根据时间范围
		{
			result = handle.getSL_warningByTimerange(request);
		}
			break;
		// 交通
		case "getTrafficForecastByTimedateAndId":// 交通气象 日期 编号
		{
			result = handle.getTrafficForecastByTimedateAndId(request);
		}
			break;
		// 城市火险
		case "getCityFireByTimeRangeAndId":// 城市火险 时间范围 编号
		{
			result = handle.getCityFireByTimeRangeAndId(request);
		}
			break;
		// 内涝
		case "getWaterLoggingByTimeRange":// 内涝 日期范围
		{
			result = handle.getWaterLoggingByTimeRange(request);
		}
			break;
		/******************************* 南充农气 ***************************/
		case "getCropgrowdateindexlib":// 作物发育期指标
		{
			result = handle.getCropgrowdateindexlib(request);
		}
			break;
		case "getDiseasesAndPestsindex":// 病虫害指标
		{
			result = handle.getDiseasesAndPestsindex(request);
		}
			break;
		case "getWeatherDiseasesindex":// 作物气象灾害指标getWeatherDiseasesindex
		{
			result = handle.getWeatherDiseasesindex(request);
		}
			break;
		case "getSoil_humidityByTimerangeAndId":// 农气预报--土壤墒情表 时间范围和编号
		{
			result = handle.getSoil_humidityByTimerangeAndId(request);
		}
			break;
		case "getAgriStation":// 农服站点信息
		{
			result = handle.getAgriStation(request);
		}
			break;

		case "getGrowthHistoryByIdCropnameVarietyYearGrowthname":// 发育期历史数据
																	// 通过站号，作物名，作物品种，年份，发育期名称
		{
			result = handle.getGrowthHistoryByIdCropnameVarietyYearGrowthname(request);
		}
			break;
		case "getGrowthForcastByIdCropnameVarietyYearGrowthname":// 发育期预报数据
																	// 通过站号，作物名，作物品种，年份，发育期名称
		{
			result = handle.getGrowthForcastByIdCropnameVarietyYearGrowthname(request);
		}
			break;

		case "getYieldHistoryByIdCropnameCropvarietyYear":// 农作物产量历史数据
															// 通过站号，作物名，作物品种，年份
		{
			result = handle.getYieldHistoryByIdCropnameCropvarietyYear(request);
		}
			break;
		case "getYieldForcastByIdCropnameCropvarietyYear":// 农作物产量预报数据
															// 通过站号，作物名，作物品种，年份
		{
			result = handle.getYieldForcastByIdCropnameCropvarietyYear(request);
		}
			break;
		case "getAgri_productByTimerange":// 农业产品 通过时间范围
		{
			result = handle.getAgri_productByTimerange(request);
		}
			break;

		/******************************* 南充旅游 ***************************/
		case "getTourForecastByTimeRangeSta":// 景点预报信息 时间范围、站号
		{
			result = handle.getTourForecastByTimeRangeSta(request);
		}
			break;
		case "getTourSmallScaleByTimeRangeAndId":// 景点实况信息查询 时间范围 站号
		{
			result = handle.getTourSmallScaleByTimeRangeAndId(request);
		}
			break;
		case "getZhiSHuForcastByTimeRangeCityid":// 旅游指数预报 时间范围 地区编号
		{
			result = handle.getZhiSHuForcastByTimeRangeCityid(request);
		}
			break;
		case "getTourProductByTimerangeType":// 旅游产品 时间范围 类型 //未入库
		{
			result = handle.getTourProductByTimerangeType(request);
		}
			break;
		/******************************* 南充环保 ***************************/
		case "getSum_atmospheric_day_dataByTimerangeId":// 大气日数据汇总表 时间范围 站点编号
		{
			result = handle.getSum_atmospheric_day_dataByTimerangeId(request);
		}
			break;
		case "getAirpollutionByTimerangeId":// 空气污染 时间范围站点编号
		{
			result = handle.getAirpollutionByTimerangeId(request);
		}
			break;
		case "getAirpol_con_fcstByTimerange":// 空气污染指数预报 时间范围
		{
			result = handle.getAirpol_con_fcstByTimerange(request);
		}
			break;
		case "getAirpol_reg_fcstByTimerange":// 空气污染回归预报 时间范围
		{
			result = handle.getAirpol_reg_fcstByTimerange(request);
		}
			break;
		case "getAirpol_fcstByTimerangeAndId":// 空气污染预报 时间范围 站点编号
		{
			result = handle.getAirpol_fcstByTimerangeAndId(request);
		}
			break;
		case "getAir_haze_warnByTimerange":// 空气霾预警 时间范围
		{
			result = handle.getAir_haze_warnByTimerange(request);
		}
			break;
		case "getHazevisibility_forecastByTimerangeNtimes":// 霾能见度预报 时间范围和时效
		{
			result = handle.getHazevisibility_forecastByTimerangeNtimes(request);
		}
			break;
		case "getHeavy_forecastByTimerange":// 重度预报 时间范围
		{
			result = handle.getHeavy_forecastByTimerange(request);
		}
			break;
		case "getHigh_elementsByTimerangeId":// 高空要素 时间范围 站点编号
		{
			result = handle.getHigh_elementsByTimerangeId(request);
		}
			break;
		case "getEnvirostationById":// 环保站 站点编号
		{
			result = handle.getEnvirostationById(request);
		}
			break;
		/******************************* 南充应急 ***************************/
		case "getHidedanger_pointById":// 隐患点 灾点编号
		{
			result = handle.getHidedanger_pointById(request);
		}
			break;
		case "getWarningByTimerange":// 预警 时间范围
		{
			result = handle.getWarningByTimerange(request);
		}
			break;
		/******************************* 南充电力 ***************************/
		case "getHourPowerLoadByTimerange":// 根据时间范围逐小时负荷预报
		{
			result = handle.getHourPowerLoadByTimerange(request);
		}
			;
			break;
		case "getDayPowerLoadByTimedate":// 根据日期,时次,时效日最大负荷预报
		{
			result = handle.getDayPowerLoadByTimedate(request);
		}
			;
			break;
		case "getPowerProductListBytimeRangeAndProducttype":// 根据时间范围，产品类型电力获取产品信息
		{
			result = handle.getPowerProductListBytimeRangeAndProducttype(request);
		}
			;
			break;
		/******************************* 南充人保 ***************************/
		case "getZhongbaoProductListBytimeRangeAndProducttype":// 根据时间范围，产品类型获取中保产品信息
		{
			result = handle.getZhongbaoProductListBytimeRangeAndProducttype(request);
		}
			break;
		case "getWeekWeatherBynTimesAndCountyStaname":// 根据时间范围，产品类型获取中保产品信息
		{
			result = handle.getWeekWeatherBynTimesAndCountyStaname(request);
		}
			break;
		case "ceshi":// 根据时间范围，产品类型获取中保产品信息
		{
			result = handle.getceshi(request);
		}
			break;
		}
		return result;

	}
}
